﻿namespace DotNetStar.OpenSDK.QQ
{
    /// <summary>
    /// 表示 QQ 用户信息的 api 响应。
    /// </summary>
    /// <seealso cref="OpenSDK.QQ.QQConnectApiResponse" />
    public class QQUserInfoApiResponse : QQInformationApiResponse
    {
        /// <summary>
        /// 初始化 <see cref="QQUserInfoApiResponse"/> 类的新实例。
        /// </summary>
        public QQUserInfoApiResponse()
        {
        }
        /// <summary>
        /// 获取用户在QQ空间的昵称
        /// </summary>
        public string Nickname { get;set; }
        /// <summary>
        /// 获取大小为 30 × 30 像素的QQ空间头像URL。
        /// </summary>
        public string Figureurl { get; set; }

        /// <summary>
        /// 获取大小为 50 × 50 像素的QQ空间头像URL。
        /// </summary>
        public string Figureurl_1 { get; set; }

        /// <summary>
        /// 获取大小为 100 × 100 像素的QQ空间头像URL。
        /// </summary>
        public string Figureurl_2 { get; set; }
        /// <summary>
        /// 获取大小为 40 × 40 像素的QQ头像URL。
        /// </summary>
        public string Figureurl_qq_1 { get;set; }
        /// <summary>
        /// 获取大小为 100 × 100 像素的QQ头像URL。需要注意，不是所有的用户都拥有QQ的100x100的头像，但40x40像素则是一定会有。
        /// </summary>
        public string Figureurl_qq_2 { get; set; }
        /// <summary>
        /// 获取性别。 如果获取不到则默认返回"男"
        /// </summary>
        public string Gender { get;set; }
        /// <summary>
        /// 表示用户是否为黄钻用户，1：是；0：否。
        /// </summary>
        public int Is_Yellow_Vip { get;set; }

        /// <summary>
        /// 表示用户是否为黄钻用户，1：是；0：否。
        /// </summary>
        public int Vip { get;set; }
        /// <summary>
        /// 获取黄钻等级。
        /// </summary>
        public int Yellow_Vip_Level { get;set; }

        /// <summary>
        /// 获取黄钻等级。
        /// </summary>
        public int Level { get;set; }

        /// <summary>
        /// 标识是否为年费黄钻用户，1：是；0：否。
        /// </summary>
        public int Is_Yellow_Year_Vip { get; set; }

        /// <summary>
        /// 获取一个布尔值，当返回码是 0 时为 <c>true</c>。
        /// </summary>
        /// <value>
        /// 若成功则为 <c>true</c>;否则为 <c>false</c>。
        /// </value>
        public override bool IsSucceed => this.Code == "0";
    }
}
